Sensor Fusion for Kinetis MCUs (ISSDK/KSDK version)
status.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  StatusSubsystem
 

Typedefs

typedef struct StatusSubsystem StatusSubsystem
 

Functions

void initializeStatusSubsystem (StatusSubsystem *pStatus)
 

Detailed Description

Applications may change how they choose to display status information. The default implementation here uses LEDs on NXP Freedom boards. You may swap out implementations as long as the "Required" methods and states are retained.

Definition in file status.h.

Typedef Documentation

StatusSubsystem() provides an object-like interface for communicating status to the user.

Function Documentation

void initializeStatusSubsystem ( StatusSubsystem pStatus)

initializeStatusSubsystem() should be called once at startup to initialize the data structure and to put hardware into the proper state for communicating status.

Parameters
pStatuspointer to the status subsystem

Definition at line 185 of file status.c.

Referenced by main().

186 {
187  pStatus->set = ssSetStatus;
188  pStatus->queue = ssQueueStatus;
189  pStatus->update = ssUpdateStatus;
190  pStatus->test = ssTest;
191  pStatus->previous = OFF;
192  pStatus->set(pStatus, OFF);
193  pStatus->queue(pStatus, OFF);
194  pStatus->toggle = false;
195 
196  /* Un-gate the port clocks */
197  CLOCK_EnableClock(RED_LED.clockName);
198  CLOCK_EnableClock(GREEN_LED.clockName);
199  //CLOCK_EnableClock(BLUE_LED.clockName);
200 
201  /* Led pin mux Configuration */
202  PORT_SetPinMux(BOARD_LED_RED_GPIO_PORT, BOARD_LED_RED_GPIO_PIN,
203  kPORT_MuxAsGpio);
204  PORT_SetPinMux(BOARD_LED_GREEN_GPIO_PORT, BOARD_LED_GREEN_GPIO_PIN,
205  kPORT_MuxAsGpio);
206  //PORT_SetPinMux(BOARD_LED_BLUE_GPIO_PORT, BOARD_LED_BLUE_GPIO_PIN,
207  // kPORT_MuxAsGpio);
208 
209  /* set initial values */
210  LED_RED_INIT(LOGIC_LED_OFF);
211  LED_GREEN_INIT(LOGIC_LED_OFF);
212  //LED_BLUE_INIT(LOGIC_LED_OFF);
213 }
ssUpdateStatus_t * test
unit test which simply increments to next state
Definition: status.h:53
void ssTest(StatusSubsystem *pStatus)
Definition: status.c:125
fusion_status_t previous
Previous status state - fusion_status_t is defined in sensor_fusion.h.
Definition: status.h:46
These are the state definitions for the status subsystem.
void ssQueueStatus(StatusSubsystem *pStatus, fusion_status_t status)
Definition: status.c:164
uint8_t toggle
This implementation can change LED color and have either solid/toggle.
Definition: status.h:55
void ssUpdateStatus(StatusSubsystem *pStatus)
Definition: status.c:170
ssUpdateStatus_t * update
make pending status active/visible
Definition: status.h:52
void ssSetStatus(StatusSubsystem *pStatus, fusion_status_t status)
Definition: status.c:177
ssSetStatus_t * set
change status immediately - no delay
Definition: status.h:50
ssSetStatus_t * queue
queue status change for next regular interval
Definition: status.h:51

+ Here is the call graph for this function:

+ Here is the caller graph for this function: